#ifndef DECRYPTOR_H_
#define DECRYPTOR_H_

#include <string>
#include <fstream>
#include <sstream>
//#include <algorithm>
//#include <functional>
//#include <locale>
#ifdef _WIN32
#include <windows.h>
// Including this library is dangerous as it defines a function called Rectangle
// thus creating a conflict with the Penjin type Rectangle
#include <winnls.h>
#include <WinError.h>
#else
#include <stdlib.h>
#endif
using namespace std;

#include "tomcrypt.h"

class Decryptor
{
    public:
        Decryptor(const char* key);
        ~Decryptor();

		string decrypt(const char* filename);
		wstring decrypt_w(const char* filename);
		wstring stringToWString(const string &s);
		string wstringToString(const wstring &s);
    protected:
    private:
    	char key[512];
    	void register_algs();

};

#endif /*DECRYPTOR_H_*/
